#ifndef __mshtmext_h__
#define __mshtmext_h__

/* Forward Declarations */

struct ENUMDESC;

/* header files for imported files */
#include "element.h"

/* header files for imported files */
#include "document.h"

#ifndef __IElementBehaviorSite_FWD_DEFINED__
#define __IElementBehaviorSite_FWD_DEFINED__
typedef interface IElementBehaviorSite IElementBehaviorSite;
#endif     /* __IElementBehaviorSite_FWD_DEFINED__ */

#ifndef __ICSSFilterSite_FWD_DEFINED__
#define __ICSSFilterSite_FWD_DEFINED__
typedef interface ICSSFilterSite ICSSFilterSite;
#endif     /* __ICSSFilterSite_FWD_DEFINED__ */

#ifndef __IMarkupPointer_FWD_DEFINED__
#define __IMarkupPointer_FWD_DEFINED__
typedef interface IMarkupPointer IMarkupPointer;
#endif     /* __IMarkupPointer_FWD_DEFINED__ */

#ifndef __IMarkupContainer_FWD_DEFINED__
#define __IMarkupContainer_FWD_DEFINED__
typedef interface IMarkupContainer IMarkupContainer;
#endif     /* __IMarkupContainer_FWD_DEFINED__ */

#ifndef __IMarkupContainer2_FWD_DEFINED__
#define __IMarkupContainer2_FWD_DEFINED__
typedef interface IMarkupContainer2 IMarkupContainer2;
#endif     /* __IMarkupContainer2_FWD_DEFINED__ */

#ifndef __IHTMLChangeLog_FWD_DEFINED__
#define __IHTMLChangeLog_FWD_DEFINED__
typedef interface IHTMLChangeLog IHTMLChangeLog;
#endif     /* __IHTMLChangeLog_FWD_DEFINED__ */

#ifndef __IHTMLChangeSink_FWD_DEFINED__
#define __IHTMLChangeSink_FWD_DEFINED__
typedef interface IHTMLChangeSink IHTMLChangeSink;
#endif     /* __IHTMLChangeSink_FWD_DEFINED__ */

#ifndef __IHTMLDocument2_FWD_DEFINED__
#define __IHTMLDocument2_FWD_DEFINED__
typedef interface IHTMLDocument2 IHTMLDocument2;
#endif     /* __IHTMLDocument2_FWD_DEFINED__ */

#ifndef __IActiveIMMApp_FWD_DEFINED__
#define __IActiveIMMApp_FWD_DEFINED__
typedef interface IActiveIMMApp IActiveIMMApp;
#endif     /* __IActiveIMMApp_FWD_DEFINED__ */

#ifndef __ISegmentList_FWD_DEFINED__
#define __ISegmentList_FWD_DEFINED__
typedef interface ISegmentList ISegmentList;
#endif     /* __ISegmentList_FWD_DEFINED__ */

#ifndef __ISegmentListIterator_FWD_DEFINED__
#define __ISegmentListIterator_FWD_DEFINED__
typedef interface ISegmentListIterator ISegmentListIterator;
#endif     /* __ISegmentListIterator_FWD_DEFINED__ */

#ifndef __IHTMLCaret_FWD_DEFINED__
#define __IHTMLCaret_FWD_DEFINED__
typedef interface IHTMLCaret IHTMLCaret;
#endif     /* __IHTMLCaret_FWD_DEFINED__ */

#ifndef __ISegment_FWD_DEFINED__
#define __ISegment_FWD_DEFINED__
typedef interface ISegment ISegment;
#endif     /* __ISegment_FWD_DEFINED__ */

#ifndef __IElementSegment_FWD_DEFINED__
#define __IElementSegment_FWD_DEFINED__
typedef interface IElementSegment IElementSegment;
#endif     /* __IElementSegment_FWD_DEFINED__ */

#ifndef __IHighlightSegment_FWD_DEFINED__
#define __IHighlightSegment_FWD_DEFINED__
typedef interface IHighlightSegment IHighlightSegment;
#endif     /* __IHighlightSegment_FWD_DEFINED__ */

#ifndef __IHighlightRenderingServices_FWD_DEFINED__
#define __IHighlightRenderingServices_FWD_DEFINED__
typedef interface IHighlightRenderingServices IHighlightRenderingServices;
#endif     /* __IHighlightRenderingServices_FWD_DEFINED__ */

#ifndef __ILineInfo_FWD_DEFINED__
#define __ILineInfo_FWD_DEFINED__
typedef interface ILineInfo ILineInfo;
#endif     /* __ILineInfo_FWD_DEFINED__ */

#ifndef __IDisplayPointer_FWD_DEFINED__
#define __IDisplayPointer_FWD_DEFINED__
typedef interface IDisplayPointer IDisplayPointer;
#endif     /* __IDisplayPointer_FWD_DEFINED__ */

#ifndef __IDisplayServices_FWD_DEFINED__
#define __IDisplayServices_FWD_DEFINED__
typedef interface IDisplayServices IDisplayServices;
#endif     /* __IDisplayServices_FWD_DEFINED__ */

#ifndef __IHtmlDlgSafeHelper_FWD_DEFINED__
#define __IHtmlDlgSafeHelper_FWD_DEFINED__
typedef interface IHtmlDlgSafeHelper IHtmlDlgSafeHelper;
#endif     /* __IHtmlDlgSafeHelper_FWD_DEFINED__ */

#ifndef __IBlockFormats_FWD_DEFINED__
#define __IBlockFormats_FWD_DEFINED__
typedef interface IBlockFormats IBlockFormats;
#endif     /* __IBlockFormats_FWD_DEFINED__ */

#ifndef __IFontNames_FWD_DEFINED__
#define __IFontNames_FWD_DEFINED__
typedef interface IFontNames IFontNames;
#endif     /* __IFontNames_FWD_DEFINED__ */

#ifndef __ICSSFilterSite_FWD_DEFINED__
#define __ICSSFilterSite_FWD_DEFINED__
typedef interface ICSSFilterSite ICSSFilterSite;
#endif     /* __ICSSFilterSite_FWD_DEFINED__ */

#ifndef __ICSSFilter_FWD_DEFINED__
#define __ICSSFilter_FWD_DEFINED__
typedef interface ICSSFilter ICSSFilter;
#endif     /* __ICSSFilter_FWD_DEFINED__ */

#ifndef __ISecureUrlHost_FWD_DEFINED__
#define __ISecureUrlHost_FWD_DEFINED__
typedef interface ISecureUrlHost ISecureUrlHost;
#endif     /* __ISecureUrlHost_FWD_DEFINED__ */

#ifndef __IMarkupServices_FWD_DEFINED__
#define __IMarkupServices_FWD_DEFINED__
typedef interface IMarkupServices IMarkupServices;
#endif     /* __IMarkupServices_FWD_DEFINED__ */

#ifndef __IMarkupServices2_FWD_DEFINED__
#define __IMarkupServices2_FWD_DEFINED__
typedef interface IMarkupServices2 IMarkupServices2;
#endif     /* __IMarkupServices2_FWD_DEFINED__ */

#ifndef __IMarkupContainer_FWD_DEFINED__
#define __IMarkupContainer_FWD_DEFINED__
typedef interface IMarkupContainer IMarkupContainer;
#endif     /* __IMarkupContainer_FWD_DEFINED__ */

#ifndef __IMarkupContainer2_FWD_DEFINED__
#define __IMarkupContainer2_FWD_DEFINED__
typedef interface IMarkupContainer2 IMarkupContainer2;
#endif     /* __IMarkupContainer2_FWD_DEFINED__ */

#ifndef __IHTMLChangePlayback_FWD_DEFINED__
#define __IHTMLChangePlayback_FWD_DEFINED__
typedef interface IHTMLChangePlayback IHTMLChangePlayback;
#endif     /* __IHTMLChangePlayback_FWD_DEFINED__ */

#ifndef __IMarkupPointer_FWD_DEFINED__
#define __IMarkupPointer_FWD_DEFINED__
typedef interface IMarkupPointer IMarkupPointer;
#endif     /* __IMarkupPointer_FWD_DEFINED__ */

#ifndef __IMarkupPointer2_FWD_DEFINED__
#define __IMarkupPointer2_FWD_DEFINED__
typedef interface IMarkupPointer2 IMarkupPointer2;
#endif     /* __IMarkupPointer2_FWD_DEFINED__ */

#ifndef __IMarkupTextFrags_FWD_DEFINED__
#define __IMarkupTextFrags_FWD_DEFINED__
typedef interface IMarkupTextFrags IMarkupTextFrags;
#endif     /* __IMarkupTextFrags_FWD_DEFINED__ */

#ifndef __IHTMLChangeLog_FWD_DEFINED__
#define __IHTMLChangeLog_FWD_DEFINED__
typedef interface IHTMLChangeLog IHTMLChangeLog;
#endif     /* __IHTMLChangeLog_FWD_DEFINED__ */

#ifndef __IHTMLChangeSink_FWD_DEFINED__
#define __IHTMLChangeSink_FWD_DEFINED__
typedef interface IHTMLChangeSink IHTMLChangeSink;
#endif     /* __IHTMLChangeSink_FWD_DEFINED__ */

#ifndef __IXMLGenericParse_FWD_DEFINED__
#define __IXMLGenericParse_FWD_DEFINED__
typedef interface IXMLGenericParse IXMLGenericParse;
#endif     /* __IXMLGenericParse_FWD_DEFINED__ */

#ifndef __IHTMLEditHost_FWD_DEFINED__
#define __IHTMLEditHost_FWD_DEFINED__
typedef interface IHTMLEditHost IHTMLEditHost;
#endif     /* __IHTMLEditHost_FWD_DEFINED__ */

#ifndef __IHTMLEditHost2_FWD_DEFINED__
#define __IHTMLEditHost2_FWD_DEFINED__
typedef interface IHTMLEditHost2 IHTMLEditHost2;
#endif     /* __IHTMLEditHost2_FWD_DEFINED__ */

#ifndef __ISegment_FWD_DEFINED__
#define __ISegment_FWD_DEFINED__
typedef interface ISegment ISegment;
#endif     /* __ISegment_FWD_DEFINED__ */

#ifndef __ISegmentListIterator_FWD_DEFINED__
#define __ISegmentListIterator_FWD_DEFINED__
typedef interface ISegmentListIterator ISegmentListIterator;
#endif     /* __ISegmentListIterator_FWD_DEFINED__ */

#ifndef __ISegmentList_FWD_DEFINED__
#define __ISegmentList_FWD_DEFINED__
typedef interface ISegmentList ISegmentList;
#endif     /* __ISegmentList_FWD_DEFINED__ */

#ifndef __ISequenceNumber_FWD_DEFINED__
#define __ISequenceNumber_FWD_DEFINED__
typedef interface ISequenceNumber ISequenceNumber;
#endif     /* __ISequenceNumber_FWD_DEFINED__ */

#ifndef __IIMEServices_FWD_DEFINED__
#define __IIMEServices_FWD_DEFINED__
typedef interface IIMEServices IIMEServices;
#endif     /* __IIMEServices_FWD_DEFINED__ */

#ifndef __IHTMLCaret_FWD_DEFINED__
#define __IHTMLCaret_FWD_DEFINED__
typedef interface IHTMLCaret IHTMLCaret;
#endif     /* __IHTMLCaret_FWD_DEFINED__ */

#ifndef __IHighlightRenderingServices_FWD_DEFINED__
#define __IHighlightRenderingServices_FWD_DEFINED__
typedef interface IHighlightRenderingServices IHighlightRenderingServices;
#endif     /* __IHighlightRenderingServices_FWD_DEFINED__ */

#ifndef __ISelectionServicesListener_FWD_DEFINED__
#define __ISelectionServicesListener_FWD_DEFINED__
typedef interface ISelectionServicesListener ISelectionServicesListener;
#endif     /* __ISelectionServicesListener_FWD_DEFINED__ */

#ifndef __ISelectionServices_FWD_DEFINED__
#define __ISelectionServices_FWD_DEFINED__
typedef interface ISelectionServices ISelectionServices;
#endif     /* __ISelectionServices_FWD_DEFINED__ */

#ifndef __IElementSegment_FWD_DEFINED__
#define __IElementSegment_FWD_DEFINED__
typedef interface IElementSegment IElementSegment;
#endif     /* __IElementSegment_FWD_DEFINED__ */

#ifndef __IHighlightSegment_FWD_DEFINED__
#define __IHighlightSegment_FWD_DEFINED__
typedef interface IHighlightSegment IHighlightSegment;
#endif     /* __IHighlightSegment_FWD_DEFINED__ */

#ifndef __IHTMLEditDesigner_FWD_DEFINED__
#define __IHTMLEditDesigner_FWD_DEFINED__
typedef interface IHTMLEditDesigner IHTMLEditDesigner;
#endif     /* __IHTMLEditDesigner_FWD_DEFINED__ */

#ifndef __IHTMLEditServices_FWD_DEFINED__
#define __IHTMLEditServices_FWD_DEFINED__
typedef interface IHTMLEditServices IHTMLEditServices;
#endif     /* __IHTMLEditServices_FWD_DEFINED__ */

#ifndef __IHTMLEditServices2_FWD_DEFINED__
#define __IHTMLEditServices2_FWD_DEFINED__
typedef interface IHTMLEditServices2 IHTMLEditServices2;
#endif     /* __IHTMLEditServices2_FWD_DEFINED__ */

#ifndef __ILineInfo_FWD_DEFINED__
#define __ILineInfo_FWD_DEFINED__
typedef interface ILineInfo ILineInfo;
#endif     /* __ILineInfo_FWD_DEFINED__ */

#ifndef __IHTMLComputedStyle_FWD_DEFINED__
#define __IHTMLComputedStyle_FWD_DEFINED__
typedef interface IHTMLComputedStyle IHTMLComputedStyle;
#endif     /* __IHTMLComputedStyle_FWD_DEFINED__ */

#ifndef __IDisplayPointer_FWD_DEFINED__
#define __IDisplayPointer_FWD_DEFINED__
typedef interface IDisplayPointer IDisplayPointer;
#endif     /* __IDisplayPointer_FWD_DEFINED__ */

#ifndef __IDisplayServices_FWD_DEFINED__
#define __IDisplayServices_FWD_DEFINED__
typedef interface IDisplayServices IDisplayServices;
#endif     /* __IDisplayServices_FWD_DEFINED__ */

#ifndef __IHtmlDlgSafeHelper_FWD_DEFINED__
#define __IHtmlDlgSafeHelper_FWD_DEFINED__
typedef interface IHtmlDlgSafeHelper IHtmlDlgSafeHelper;
#endif     /* __IHtmlDlgSafeHelper_FWD_DEFINED__ */

#ifndef __IBlockFormats_FWD_DEFINED__
#define __IBlockFormats_FWD_DEFINED__
typedef interface IBlockFormats IBlockFormats;
#endif     /* __IBlockFormats_FWD_DEFINED__ */

#ifndef __IFontNames_FWD_DEFINED__
#define __IFontNames_FWD_DEFINED__
typedef interface IFontNames IFontNames;
#endif     /* __IFontNames_FWD_DEFINED__ */
typedef enum _ELEMENT_CORNER
{
    ELEMENT_CORNER_NONE = 0,
    ELEMENT_CORNER_TOP = 1,
    ELEMENT_CORNER_LEFT = 2,
    ELEMENT_CORNER_BOTTOM = 3,
    ELEMENT_CORNER_RIGHT = 4,
    ELEMENT_CORNER_TOPLEFT = 5,
    ELEMENT_CORNER_TOPRIGHT = 6,
    ELEMENT_CORNER_BOTTOMLEFT = 7,
    ELEMENT_CORNER_BOTTOMRIGHT = 8,
    ELEMENT_CORNER_Max = 2147483647L
} ELEMENT_CORNER;


EXTERN_C const ENUMDESC s_enumdescELEMENT_CORNER;

typedef enum _SECUREURLHOSTVALIDATE_FLAGS
{
    SUHV_PROMPTBEFORENO = 0x00000001,
    SUHV_SILENTYES = 0x00000002,
    SUHV_UNSECURESOURCE = 0x00000004,
    SECUREURLHOSTVALIDATE_FLAGS_Max = 2147483647L
} SECUREURLHOSTVALIDATE_FLAGS;


EXTERN_C const ENUMDESC s_enumdescSECUREURLHOSTVALIDATE_FLAGS;

typedef enum _POINTER_GRAVITY
{
    POINTER_GRAVITY_Left = 0,
    POINTER_GRAVITY_Right = 1,
    POINTER_GRAVITY_Max = 2147483647L
} POINTER_GRAVITY;


EXTERN_C const ENUMDESC s_enumdescPOINTER_GRAVITY;

typedef enum _ELEMENT_ADJACENCY
{
    ELEM_ADJ_BeforeBegin = 0,
    ELEM_ADJ_AfterBegin = 1,
    ELEM_ADJ_BeforeEnd = 2,
    ELEM_ADJ_AfterEnd = 3,
    ELEMENT_ADJACENCY_Max = 2147483647L
} ELEMENT_ADJACENCY;


EXTERN_C const ENUMDESC s_enumdescELEMENT_ADJACENCY;

typedef enum _MARKUP_CONTEXT_TYPE
{
    CONTEXT_TYPE_None = 0,
    CONTEXT_TYPE_Text = 1,
    CONTEXT_TYPE_EnterScope = 2,
    CONTEXT_TYPE_ExitScope = 3,
    CONTEXT_TYPE_NoScope = 4,
    MARKUP_CONTEXT_TYPE_Max = 2147483647L
} MARKUP_CONTEXT_TYPE;


EXTERN_C const ENUMDESC s_enumdescMARKUP_CONTEXT_TYPE;

typedef enum _FINDTEXT_FLAGS
{
    FINDTEXT_BACKWARDS = 0x00000001,
    FINDTEXT_WHOLEWORD = 0x00000002,
    FINDTEXT_MATCHCASE = 0x00000004,
    FINDTEXT_RAW = 0x00020000,
    FINDTEXT_MATCHDIAC = 0x20000000,
    FINDTEXT_MATCHKASHIDA = 0x40000000,
    FINDTEXT_MATCHALEFHAMZA = 0x80000000,
    FINDTEXT_FLAGS_Max = 2147483647L
} FINDTEXT_FLAGS;


EXTERN_C const ENUMDESC s_enumdescFINDTEXT_FLAGS;

typedef enum _MOVEUNIT_ACTION
{
    MOVEUNIT_PREVCHAR = 0,
    MOVEUNIT_NEXTCHAR = 1,
    MOVEUNIT_PREVCLUSTERBEGIN = 2,
    MOVEUNIT_NEXTCLUSTERBEGIN = 3,
    MOVEUNIT_PREVCLUSTEREND = 4,
    MOVEUNIT_NEXTCLUSTEREND = 5,
    MOVEUNIT_PREVWORDBEGIN = 6,
    MOVEUNIT_NEXTWORDBEGIN = 7,
    MOVEUNIT_PREVWORDEND = 8,
    MOVEUNIT_NEXTWORDEND = 9,
    MOVEUNIT_PREVPROOFWORD = 10,
    MOVEUNIT_NEXTPROOFWORD = 11,
    MOVEUNIT_NEXTURLBEGIN = 12,
    MOVEUNIT_PREVURLBEGIN = 13,
    MOVEUNIT_NEXTURLEND = 14,
    MOVEUNIT_PREVURLEND = 15,
    MOVEUNIT_PREVSENTENCE = 16,
    MOVEUNIT_NEXTSENTENCE = 17,
    MOVEUNIT_PREVBLOCK = 18,
    MOVEUNIT_NEXTBLOCK = 19,
    MOVEUNIT_ACTION_Max = 2147483647L
} MOVEUNIT_ACTION;


EXTERN_C const ENUMDESC s_enumdescMOVEUNIT_ACTION;

typedef enum _PARSE_FLAGS
{
    PARSE_ABSOLUTIFYIE40URLS = 0x00000001,
    PARSE_FLAGS_Max = 2147483647L
} PARSE_FLAGS;


EXTERN_C const ENUMDESC s_enumdescPARSE_FLAGS;

typedef enum _ELEMENT_TAG_ID
{
    TAGID_NULL = 0,
    TAGID_UNKNOWN = 1,
    TAGID_A = 2,
    TAGID_ACRONYM = 3,
    TAGID_ADDRESS = 4,
    TAGID_APPLET = 5,
    TAGID_AREA = 6,
    TAGID_B = 7,
    TAGID_BASE = 8,
    TAGID_BASEFONT = 9,
    TAGID_BDO = 10,
    TAGID_BGSOUND = 11,
    TAGID_BIG = 12,
    TAGID_BLINK = 13,
    TAGID_BLOCKQUOTE = 14,
    TAGID_BODY = 15,
    TAGID_BR = 16,
    TAGID_BUTTON = 17,
    TAGID_CAPTION = 18,
    TAGID_CENTER = 19,
    TAGID_CITE = 20,
    TAGID_CODE = 21,
    TAGID_COL = 22,
    TAGID_COLGROUP = 23,
    TAGID_COMMENT = 24,
    TAGID_COMMENT_RAW = 25,
    TAGID_DD = 26,
    TAGID_DEL = 27,
    TAGID_DFN = 28,
    TAGID_DIR = 29,
    TAGID_DIV = 30,
    TAGID_DL = 31,
    TAGID_DT = 32,
    TAGID_EM = 33,
    TAGID_EMBED = 34,
    TAGID_FIELDSET = 35,
    TAGID_FONT = 36,
    TAGID_FORM = 37,
    TAGID_FRAME = 38,
    TAGID_FRAMESET = 39,
    TAGID_GENERIC = 40,
    TAGID_H1 = 41,
    TAGID_H2 = 42,
    TAGID_H3 = 43,
    TAGID_H4 = 44,
    TAGID_H5 = 45,
    TAGID_H6 = 46,
    TAGID_HEAD = 47,
    TAGID_HR = 48,
    TAGID_HTML = 49,
    TAGID_I = 50,
    TAGID_IFRAME = 51,
    TAGID_IMG = 52,
    TAGID_INPUT = 53,
    TAGID_INS = 54,
    TAGID_KBD = 55,
    TAGID_LABEL = 56,
    TAGID_LEGEND = 57,
    TAGID_LI = 58,
    TAGID_LINK = 59,
    TAGID_LISTING = 60,
    TAGID_MAP = 61,
    TAGID_MARQUEE = 62,
    TAGID_MENU = 63,
    TAGID_META = 64,
    TAGID_NEXTID = 65,
    TAGID_NOBR = 66,
    TAGID_NOEMBED = 67,
    TAGID_NOFRAMES = 68,
    TAGID_NOSCRIPT = 69,
    TAGID_OBJECT = 70,
    TAGID_OL = 71,
    TAGID_OPTION = 72,
    TAGID_P = 73,
    TAGID_PARAM = 74,
    TAGID_PLAINTEXT = 75,
    TAGID_PRE = 76,
    TAGID_Q = 77,
    TAGID_RP = 78,
    TAGID_RT = 79,
    TAGID_RUBY = 80,
    TAGID_S = 81,
    TAGID_SAMP = 82,
    TAGID_SCRIPT = 83,
    TAGID_SELECT = 84,
    TAGID_SMALL = 85,
    TAGID_SPAN = 86,
    TAGID_STRIKE = 87,
    TAGID_STRONG = 88,
    TAGID_STYLE = 89,
    TAGID_SUB = 90,
    TAGID_SUP = 91,
    TAGID_TABLE = 92,
    TAGID_TBODY = 93,
    TAGID_TC = 94,
    TAGID_TD = 95,
    TAGID_TEXTAREA = 96,
    TAGID_TFOOT = 97,
    TAGID_TH = 98,
    TAGID_THEAD = 99,
    TAGID_TITLE = 100,
    TAGID_TR = 101,
    TAGID_TT = 102,
    TAGID_U = 103,
    TAGID_UL = 104,
    TAGID_VAR = 105,
    TAGID_WBR = 106,
    TAGID_XMP = 107,
    TAGID_ROOT = 108,
    TAGID_OPTGROUP = 109,
    TAGID_COUNT = 110,
    TAGID_LAST_PREDEFINED = 10000,
    ELEMENT_TAG_ID_Max = 2147483647L
} ELEMENT_TAG_ID;


EXTERN_C const ENUMDESC s_enumdescELEMENT_TAG_ID;

typedef enum _SELECTION_TYPE
{
    SELECTION_TYPE_None = 0,
    SELECTION_TYPE_Caret = 1,
    SELECTION_TYPE_Text = 2,
    SELECTION_TYPE_Control = 3,
    SELECTION_TYPE_Max = 2147483647L
} SELECTION_TYPE;


EXTERN_C const ENUMDESC s_enumdescSELECTION_TYPE;

typedef enum _SAVE_SEGMENTS_FLAGS
{
    SAVE_SEGMENTS_NoIE4SelectionCompat = 0x0001,
    SAVE_SEGMENTS_FLAGS_Max = 2147483647L
} SAVE_SEGMENTS_FLAGS;


EXTERN_C const ENUMDESC s_enumdescSAVE_SEGMENTS_FLAGS;

typedef enum _CARET_DIRECTION
{
    CARET_DIRECTION_INDETERMINATE = 0,
    CARET_DIRECTION_SAME = 1,
    CARET_DIRECTION_BACKWARD = 2,
    CARET_DIRECTION_FORWARD = 3,
    CARET_DIRECTION_Max = 2147483647L
} CARET_DIRECTION;


EXTERN_C const ENUMDESC s_enumdescCARET_DIRECTION;

typedef enum _LINE_DIRECTION
{
    LINE_DIRECTION_RightToLeft = 1,
    LINE_DIRECTION_LeftToRight = 2,
    LINE_DIRECTION_Max = 2147483647L
} LINE_DIRECTION;


EXTERN_C const ENUMDESC s_enumdescLINE_DIRECTION;

typedef enum _HT_OPTIONS
{
    HT_OPT_AllowAfterEOL = 0x1,
    HT_OPTIONS_Max = 2147483647L
} HT_OPTIONS;


EXTERN_C const ENUMDESC s_enumdescHT_OPTIONS;

typedef enum _HT_RESULTS
{
    HT_RESULTS_Glyph = 0x1,
    HT_RESULTS_Max = 2147483647L
} HT_RESULTS;


EXTERN_C const ENUMDESC s_enumdescHT_RESULTS;

typedef enum _DISPLAY_MOVEUNIT
{
    DISPLAY_MOVEUNIT_PreviousLine = 1,
    DISPLAY_MOVEUNIT_NextLine = 2,
    DISPLAY_MOVEUNIT_CurrentLineStart = 3,
    DISPLAY_MOVEUNIT_CurrentLineEnd = 4,
    DISPLAY_MOVEUNIT_TopOfWindow = 5,
    DISPLAY_MOVEUNIT_BottomOfWindow = 6,
    DISPLAY_MOVEUNIT_Max = 2147483647L
} DISPLAY_MOVEUNIT;


EXTERN_C const ENUMDESC s_enumdescDISPLAY_MOVEUNIT;

typedef enum _DISPLAY_GRAVITY
{
    DISPLAY_GRAVITY_PreviousLine = 1,
    DISPLAY_GRAVITY_NextLine = 2,
    DISPLAY_GRAVITY_Max = 2147483647L
} DISPLAY_GRAVITY;


EXTERN_C const ENUMDESC s_enumdescDISPLAY_GRAVITY;

typedef enum _DISPLAY_BREAK
{
    DISPLAY_BREAK_None = 0x0,
    DISPLAY_BREAK_Block = 0x1,
    DISPLAY_BREAK_Break = 0x2,
    DISPLAY_BREAK_Max = 2147483647L
} DISPLAY_BREAK;


EXTERN_C const ENUMDESC s_enumdescDISPLAY_BREAK;

typedef enum _COORD_SYSTEM
{
    COORD_SYSTEM_GLOBAL = 0,
    COORD_SYSTEM_PARENT = 1,
    COORD_SYSTEM_CONTAINER = 2,
    COORD_SYSTEM_CONTENT = 3,
    COORD_SYSTEM_FRAME = 4,
    COORD_SYSTEM_Max = 2147483647L
} COORD_SYSTEM;


EXTERN_C const ENUMDESC s_enumdescCOORD_SYSTEM;


#ifndef __ICSSFilterSite_INTERFACE_DEFINED__

#define __ICSSFilterSite_INTERFACE_DEFINED__

EXTERN_C const IID IID_ICSSFilterSite;


MIDL_INTERFACE("3050f3ed-98b5-11cf-bb82-00aa00bdce0b")
ICSSFilterSite : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE GetElement(
            /* [out] */ IHTMLElement** Element) = 0;

    virtual HRESULT STDMETHODCALLTYPE FireOnFilterChangeEvent(
            ) = 0;

};

#endif     /* __ICSSFilterSite_INTERFACE_DEFINED__ */


#ifndef __ICSSFilter_INTERFACE_DEFINED__

#define __ICSSFilter_INTERFACE_DEFINED__

EXTERN_C const IID IID_ICSSFilter;


MIDL_INTERFACE("3050f3ec-98b5-11cf-bb82-00aa00bdce0b")
ICSSFilter : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE SetSite(
            /* [in] */ ICSSFilterSite* pSink) = 0;

    virtual HRESULT STDMETHODCALLTYPE OnAmbientPropertyChange(
            /* [in] */ LONG dispid) = 0;

};

#endif     /* __ICSSFilter_INTERFACE_DEFINED__ */


#ifndef __ISecureUrlHost_INTERFACE_DEFINED__

#define __ISecureUrlHost_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISecureUrlHost;


MIDL_INTERFACE("c81984c4-74c8-11d2-baa9-00c04fc2040e")
ISecureUrlHost : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE ValidateSecureUrl(
            /* [out] */ BOOL* pfAllow,/* [in] */ OLECHAR* pchUrlInQuestion,/* [in] */ DWORD dwFlags) = 0;

};

#endif     /* __ISecureUrlHost_INTERFACE_DEFINED__ */


#ifndef __IMarkupServices_INTERFACE_DEFINED__

#define __IMarkupServices_INTERFACE_DEFINED__

EXTERN_C const IID IID_IMarkupServices;


MIDL_INTERFACE("3050f4a0-98b5-11cf-bb82-00aa00bdce0b")
IMarkupServices : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE CreateMarkupPointer(
            /* [out] */ IMarkupPointer** ppPointer) = 0;

    virtual HRESULT STDMETHODCALLTYPE CreateMarkupContainer(
            /* [out] */ IMarkupContainer** ppMarkupContainer) = 0;

    virtual HRESULT STDMETHODCALLTYPE CreateElement(
            /* [in] */ ELEMENT_TAG_ID tagID,/* [in] */ OLECHAR* pchAttributes,/* [out] */ IHTMLElement** ppElement) = 0;

    virtual HRESULT STDMETHODCALLTYPE CloneElement(
            /* [in] */ IHTMLElement* pElemCloneThis,/* [out] */ IHTMLElement** ppElementTheClone) = 0;

    virtual HRESULT STDMETHODCALLTYPE InsertElement(
            /* [in] */ IHTMLElement* pElementInsert,/* [in] */ IMarkupPointer* pPointerStart,/* [in] */ IMarkupPointer* pPointerFinish) = 0;

    virtual HRESULT STDMETHODCALLTYPE RemoveElement(
            /* [in] */ IHTMLElement* pElementRemove) = 0;

    virtual HRESULT STDMETHODCALLTYPE Remove(
            /* [in] */ IMarkupPointer* pPointerStart,/* [in] */ IMarkupPointer* pPointerFinish) = 0;

    virtual HRESULT STDMETHODCALLTYPE Copy(
            /* [in] */ IMarkupPointer* pPointerSourceStart,/* [in] */ IMarkupPointer* pPointerSourceFinish,/* [in] */ IMarkupPointer* pPointerTarget) = 0;

    virtual HRESULT STDMETHODCALLTYPE Move(
            /* [in] */ IMarkupPointer* pPointerSourceStart,/* [in] */ IMarkupPointer* pPointerSourceFinish,/* [in] */ IMarkupPointer* pPointerTarget) = 0;

    virtual HRESULT STDMETHODCALLTYPE InsertText(
            /* [in] */ OLECHAR* pchText,/* [in] */ long cch,/* [in] */ IMarkupPointer* pPointerTarget) = 0;

    virtual HRESULT STDMETHODCALLTYPE ParseString(
            /* [in] */ OLECHAR* pchHTML,/* [in] */ DWORD dwFlags,/* [out] */ IMarkupContainer** ppContainerResult,/* [in] */ IMarkupPointer* ppPointerStart,/* [in] */ IMarkupPointer* ppPointerFinish) = 0;

    virtual HRESULT STDMETHODCALLTYPE ParseGlobal(
            /* [in] */ HGLOBAL hglobalHTML,/* [in] */ DWORD dwFlags,/* [out] */ IMarkupContainer** ppContainerResult,/* [in] */ IMarkupPointer* pPointerStart,/* [in] */ IMarkupPointer* pPointerFinish) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsScopedElement(
            /* [in] */ IHTMLElement* pElement,/* [out] */ BOOL* pfScoped) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetElementTagId(
            /* [in] */ IHTMLElement* pElement,/* [out] */ ELEMENT_TAG_ID* ptagId) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetTagIDForName(
            /* [in] */ BSTR bstrName,/* [out] */ ELEMENT_TAG_ID* ptagId) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetNameForTagID(
            /* [in] */ ELEMENT_TAG_ID tagId,/* [out] */ BSTR* pbstrName) = 0;

    virtual HRESULT STDMETHODCALLTYPE MovePointersToRange(
            /* [in] */ IHTMLTxtRange* pIRange,/* [in] */ IMarkupPointer* pPointerStart,/* [in] */ IMarkupPointer* pPointerFinish) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveRangeToPointers(
            /* [in] */ IMarkupPointer* pPointerStart,/* [in] */ IMarkupPointer* pPointerFinish,/* [in] */ IHTMLTxtRange* pIRange) = 0;

    virtual HRESULT STDMETHODCALLTYPE BeginUndoUnit(
            /* [in] */ OLECHAR* pchTitle) = 0;

    virtual HRESULT STDMETHODCALLTYPE EndUndoUnit(
            ) = 0;

};

#endif     /* __IMarkupServices_INTERFACE_DEFINED__ */


#ifndef __IMarkupServices2_INTERFACE_DEFINED__

#define __IMarkupServices2_INTERFACE_DEFINED__

EXTERN_C const IID IID_IMarkupServices2;


MIDL_INTERFACE("3050f682-98b5-11cf-bb82-00aa00bdce0b")
IMarkupServices2 : public IMarkupServices
{
public:
    virtual HRESULT STDMETHODCALLTYPE ParseGlobalEx(
            /* [in] */ HGLOBAL hglobalHTML,/* [in] */ DWORD dwFlags,/* [in] */ IMarkupContainer* pContext,/* [out] */ IMarkupContainer** ppContainerResult,/* [in] */ IMarkupPointer* pPointerStart,/* [in] */ IMarkupPointer* pPointerFinish) = 0;

    virtual HRESULT STDMETHODCALLTYPE ValidateElements(
            /* [in] */ IMarkupPointer* pPointerStart,/* [in] */ IMarkupPointer* pPointerFinish,/* [in] */ IMarkupPointer* pPointerTarget,/* [in, out] */ IMarkupPointer* pPointerStatus,/* [out] */ IHTMLElement** ppElemFailBottom,/* [out] */ IHTMLElement** ppElemFailTop) = 0;

    virtual HRESULT STDMETHODCALLTYPE SaveSegmentsToClipboard(
            /* [in] */ ISegmentList* pSegmentList,/* [in] */ DWORD dwFlags) = 0;

};

#endif     /* __IMarkupServices2_INTERFACE_DEFINED__ */


#ifndef __IMarkupContainer_INTERFACE_DEFINED__

#define __IMarkupContainer_INTERFACE_DEFINED__

EXTERN_C const IID IID_IMarkupContainer;


MIDL_INTERFACE("3050f5f9-98b5-11cf-bb82-00aa00bdce0b")
IMarkupContainer : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE OwningDoc(
            /* [out] */ IHTMLDocument2** ppDoc) = 0;

};

#endif     /* __IMarkupContainer_INTERFACE_DEFINED__ */


#ifndef __IMarkupContainer2_INTERFACE_DEFINED__

#define __IMarkupContainer2_INTERFACE_DEFINED__

EXTERN_C const IID IID_IMarkupContainer2;


MIDL_INTERFACE("3050f648-98b5-11cf-bb82-00aa00bdce0b")
IMarkupContainer2 : public IMarkupContainer
{
public:
    virtual HRESULT STDMETHODCALLTYPE CreateChangeLog(
            /* [in] */ IHTMLChangeSink* pChangeSink,/* [out] */ IHTMLChangeLog** ppChangeLog,/* [in] */ BOOL fForward,/* [in] */ BOOL fBackward) = 0;

    virtual HRESULT STDMETHODCALLTYPE RegisterForDirtyRange(
            /* [in] */ IHTMLChangeSink* pChangeSink,/* [out] */ DWORD* pdwCookie) = 0;

    virtual HRESULT STDMETHODCALLTYPE UnRegisterForDirtyRange(
            /* [in] */ DWORD dwCookie) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetAndClearDirtyRange(
            /* [in] */ DWORD dwCookie,/* [in] */ IMarkupPointer* pIPointerBegin,/* [in] */ IMarkupPointer* pIPointerEnd) = 0;

    virtual long STDMETHODCALLTYPE GetVersionNumber(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetMasterElement(
            /* [out] */ IHTMLElement** ppElementMaster) = 0;

};

#endif     /* __IMarkupContainer2_INTERFACE_DEFINED__ */


#ifndef __IHTMLChangePlayback_INTERFACE_DEFINED__

#define __IHTMLChangePlayback_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLChangePlayback;


MIDL_INTERFACE("3050f6e0-98b5-11cf-bb82-00aa00bdce0b")
IHTMLChangePlayback : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE ExecChange(
            /* [in] */ BYTE* pbRecord,/* [in] */ BOOL fForward) = 0;

};

#endif     /* __IHTMLChangePlayback_INTERFACE_DEFINED__ */


#ifndef __IMarkupPointer_INTERFACE_DEFINED__

#define __IMarkupPointer_INTERFACE_DEFINED__

EXTERN_C const IID IID_IMarkupPointer;


MIDL_INTERFACE("3050f49f-98b5-11cf-bb82-00aa00bdce0b")
IMarkupPointer : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE OwningDoc(
            /* [out] */ IHTMLDocument2** ppDoc) = 0;

    virtual HRESULT STDMETHODCALLTYPE Gravity(
            /* [out] */ POINTER_GRAVITY* pGravity) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetGravity(
            /* [in] */ POINTER_GRAVITY Gravity) = 0;

    virtual HRESULT STDMETHODCALLTYPE Cling(
            /* [out] */ BOOL* pfCling) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetCling(
            /* [in] */ BOOL fCLing) = 0;

    virtual HRESULT STDMETHODCALLTYPE Unposition(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsPositioned(
            /* [out] */ BOOL* pfPositioned) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetContainer(
            /* [out] */ IMarkupContainer** ppContainer) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveAdjacentToElement(
            /* [in] */ IHTMLElement* pElement,/* [in] */ ELEMENT_ADJACENCY eAdj) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToPointer(
            /* [in] */ IMarkupPointer* pPointer) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToContainer(
            /* [in] */ IMarkupContainer* pContainer,/* [in] */ BOOL fAtStart) = 0;

    virtual HRESULT STDMETHODCALLTYPE Left(
            /* [in] */ BOOL fMove,/* [out] */ MARKUP_CONTEXT_TYPE* pContext,/* [out] */ IHTMLElement** ppElement,/* [in, out] */ long* pcch,/* [out] */ OLECHAR* pchText) = 0;

    virtual HRESULT STDMETHODCALLTYPE Right(
            /* [in] */ BOOL fMove,/* [out] */ MARKUP_CONTEXT_TYPE* pContext,/* [out] */ IHTMLElement** ppElement,/* [in, out] */ long* pcch,/* [out] */ OLECHAR* pchText) = 0;

    virtual HRESULT STDMETHODCALLTYPE CurrentScope(
            /* [out] */ IHTMLElement** ppElemCurrent) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsLeftOf(
            /* [in] */ IMarkupPointer* pPointerThat,/* [out] */ BOOL* pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsLeftOfOrEqualTo(
            /* [in] */ IMarkupPointer* pPointerThat,/* [out] */ BOOL* pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsRightOf(
            /* [in] */ IMarkupPointer* pPointerThat,/* [out] */ BOOL* pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsRightOfOrEqualTo(
            /* [in] */ IMarkupPointer* pPointerThat,/* [out] */ BOOL* pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsEqualTo(
            /* [in] */ IMarkupPointer* pPointerThat,/* [out] */ BOOL* pfAreEqual) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveUnit(
            /* [in] */ MOVEUNIT_ACTION muAction) = 0;

    virtual HRESULT STDMETHODCALLTYPE FindText(
            /* [in] */ OLECHAR* pchFindText,/* [in] */ DWORD dwFlags,/* [in] */ IMarkupPointer* pIEndMatch,/* [in] */ IMarkupPointer* pIEndSearch) = 0;

};

#endif     /* __IMarkupPointer_INTERFACE_DEFINED__ */


#ifndef __IMarkupPointer2_INTERFACE_DEFINED__

#define __IMarkupPointer2_INTERFACE_DEFINED__

EXTERN_C const IID IID_IMarkupPointer2;


MIDL_INTERFACE("3050f675-98b5-11cf-bb82-00aa00bdce0b")
IMarkupPointer2 : public IMarkupPointer
{
public:
    virtual HRESULT STDMETHODCALLTYPE IsAtWordBreak(
            /* [out] */ BOOL* pfAtBreak) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetMarkupPosition(
            /* [out] */ long* plMP) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToMarkupPosition(
            /* [in] */ IMarkupContainer* pContainer,/* [in] */ long lMP) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveUnitBounded(
            /* [in] */ MOVEUNIT_ACTION muAction,/* [in] */ IMarkupPointer* pIBoundary) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsInsideURL(
            /* [in] */ IMarkupPointer* pRight,/* [out] */ BOOL* pfResult) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToContent(
            /* [in] */ IHTMLElement* pIElement,/* [in] */ BOOL fAtStart) = 0;

};

#endif     /* __IMarkupPointer2_INTERFACE_DEFINED__ */


#ifndef __IMarkupTextFrags_INTERFACE_DEFINED__

#define __IMarkupTextFrags_INTERFACE_DEFINED__

EXTERN_C const IID IID_IMarkupTextFrags;


MIDL_INTERFACE("3050f5fa-98b5-11cf-bb82-00aa00bdce0b")
IMarkupTextFrags : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE GetTextFragCount(
            /* [out] */ long* pcFrags) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetTextFrag(
            /* [in] */ long iFrag,/* [out] */ BSTR* pbstrFrag,/* [in] */ IMarkupPointer* pPointerFrag) = 0;

    virtual HRESULT STDMETHODCALLTYPE RemoveTextFrag(
            /* [in] */ long iFrag) = 0;

    virtual HRESULT STDMETHODCALLTYPE InsertTextFrag(
            /* [in] */ long iFrag,/* [in] */ BSTR bstrInsert,/* [in] */ IMarkupPointer* pPointerInsert) = 0;

    virtual HRESULT STDMETHODCALLTYPE FindTextFragFromMarkupPointer(
            /* [in] */ IMarkupPointer* pPointerFind,/* [out] */ long* piFrag,/* [out] */ BOOL* pfFragFound) = 0;

};

#endif     /* __IMarkupTextFrags_INTERFACE_DEFINED__ */


#ifndef __IHTMLChangeLog_INTERFACE_DEFINED__

#define __IHTMLChangeLog_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLChangeLog;


MIDL_INTERFACE("3050f649-98b5-11cf-bb82-00aa00bdce0b")
IHTMLChangeLog : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE GetNextChange(
            /* [in] */ BYTE* pbBuffer,/* [in] */ long nBufferSize,/* [out] */ long* pnRecordLength) = 0;

};

#endif     /* __IHTMLChangeLog_INTERFACE_DEFINED__ */


#ifndef __IHTMLChangeSink_INTERFACE_DEFINED__

#define __IHTMLChangeSink_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLChangeSink;


MIDL_INTERFACE("3050f64a-98b5-11cf-bb82-00aa00bdce0b")
IHTMLChangeSink : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE Notify(
            ) = 0;

};

#endif     /* __IHTMLChangeSink_INTERFACE_DEFINED__ */


#ifndef __IXMLGenericParse_INTERFACE_DEFINED__

#define __IXMLGenericParse_INTERFACE_DEFINED__

EXTERN_C const IID IID_IXMLGenericParse;


MIDL_INTERFACE("E4E23071-4D07-11d2-AE76-0080C73BC199")
IXMLGenericParse : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE SetGenericParse(
            /* [in] */ VARIANT_BOOL fDoGeneric) = 0;

};

#endif     /* __IXMLGenericParse_INTERFACE_DEFINED__ */


#ifndef __IHTMLEditHost_INTERFACE_DEFINED__

#define __IHTMLEditHost_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLEditHost;


MIDL_INTERFACE("3050f6a0-98b5-11cf-bb82-00aa00bdce0b")
IHTMLEditHost : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE SnapRect(
            /* [in] */ IHTMLElement* pIElement,/* [in, out] */ RECT* prcNew,/* [in] */ ELEMENT_CORNER eHandle) = 0;

};

#endif     /* __IHTMLEditHost_INTERFACE_DEFINED__ */


#ifndef __IHTMLEditHost2_INTERFACE_DEFINED__

#define __IHTMLEditHost2_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLEditHost2;


MIDL_INTERFACE("3050f848-98b5-11cf-bb82-00aa00bdce0d")
IHTMLEditHost2 : public IHTMLEditHost
{
public:
    virtual HRESULT STDMETHODCALLTYPE PreDrag(
            ) = 0;

};

#endif     /* __IHTMLEditHost2_INTERFACE_DEFINED__ */


#ifndef __ISegment_INTERFACE_DEFINED__

#define __ISegment_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISegment;


MIDL_INTERFACE("3050f683-98b5-11cf-bb82-00aa00bdce0b")
ISegment : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE GetPointers(
            /* [in] */ IMarkupPointer* pIStart,/* [in] */ IMarkupPointer* pIEnd) = 0;

};

#endif     /* __ISegment_INTERFACE_DEFINED__ */


#ifndef __ISegmentListIterator_INTERFACE_DEFINED__

#define __ISegmentListIterator_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISegmentListIterator;


MIDL_INTERFACE("3050f692-98b5-11cf-bb82-00aa00bdce0b")
ISegmentListIterator : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE Current(
            /* [out] */ ISegment** ppISegment) = 0;

    virtual HRESULT STDMETHODCALLTYPE First(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsDone(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE Advance(
            ) = 0;

};

#endif     /* __ISegmentListIterator_INTERFACE_DEFINED__ */


#ifndef __ISegmentList_INTERFACE_DEFINED__

#define __ISegmentList_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISegmentList;


MIDL_INTERFACE("3050f605-98b5-11cf-bb82-00aa00bdce0b")
ISegmentList : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE CreateIterator(
            /* [out] */ ISegmentListIterator** ppIIter) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetType(
            /* [out] */ SELECTION_TYPE* peType) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsEmpty(
            /* [out] */ BOOL* pfEmpty) = 0;

};

#endif     /* __ISegmentList_INTERFACE_DEFINED__ */


#ifndef __ISequenceNumber_INTERFACE_DEFINED__

#define __ISequenceNumber_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISequenceNumber;


MIDL_INTERFACE("3050f6c1-98b5-11cf-bb82-00aa00bdce0b")
ISequenceNumber : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE GetSequenceNumber(
            /* [in] */ long nCurrent,/* [out] */ long* pnNew) = 0;

};

#endif     /* __ISequenceNumber_INTERFACE_DEFINED__ */


#ifndef __IIMEServices_INTERFACE_DEFINED__

#define __IIMEServices_INTERFACE_DEFINED__

EXTERN_C const IID IID_IIMEServices;


MIDL_INTERFACE("3050f6ca-98b5-11cf-bb82-00aa00bdce0b")
IIMEServices : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE GetActiveIMM(
            /* [out] */ IActiveIMMApp** ppActiveIMM) = 0;

};

#endif     /* __IIMEServices_INTERFACE_DEFINED__ */


#ifndef __IHTMLCaret_INTERFACE_DEFINED__

#define __IHTMLCaret_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLCaret;


MIDL_INTERFACE("3050f604-98b5-11cf-bb82-00aa00bdce0b")
IHTMLCaret : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE MoveCaretToPointer(
            /* [in] */ IDisplayPointer* pDispPointer,/* [in] */ BOOL fScrollIntoView,/* [in] */ CARET_DIRECTION eDir) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveCaretToPointerEx(
            /* [in] */ IDisplayPointer* pDispPointer,/* [in] */ BOOL fVisible,/* [in] */ BOOL fScrollIntoView,/* [in] */ CARET_DIRECTION eDir) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveMarkupPointerToCaret(
            /* [in] */ IMarkupPointer* pIMarkupPointer) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveDisplayPointerToCaret(
            /* [in] */ IDisplayPointer* pDispPointer) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsVisible(
            /* [out] */ BOOL* pIsVisible) = 0;

    virtual HRESULT STDMETHODCALLTYPE Show(
            /* [in] */ BOOL fScrollIntoView) = 0;

    virtual HRESULT STDMETHODCALLTYPE Hide(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE InsertText(
            /* [in] */ OLECHAR* pText,/* [in] */ LONG lLen) = 0;

    virtual HRESULT STDMETHODCALLTYPE ScrollIntoView(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetLocation(
            /* [out] */ POINT* pPoint,/* [in] */ BOOL fTranslate) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetCaretDirection(
            /* [out] */ CARET_DIRECTION* peDir) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetCaretDirection(
            /* [in] */ CARET_DIRECTION eDir) = 0;

};

#endif     /* __IHTMLCaret_INTERFACE_DEFINED__ */


#ifndef __IHighlightRenderingServices_INTERFACE_DEFINED__

#define __IHighlightRenderingServices_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHighlightRenderingServices;


MIDL_INTERFACE("3050f606-98b5-11cf-bb82-00aa00bdce0b")
IHighlightRenderingServices : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE AddSegment(
            /* [in] */ IDisplayPointer* pDispPointerStart,/* [in] */ IDisplayPointer* pDispPointerEnd,/* [in] */ IHTMLRenderStyle* pIRenderStyle,/* [out] */ IHighlightSegment** ppISegment) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveSegmentToPointers(
            /* [in] */ IHighlightSegment* pISegment,/* [in] */ IDisplayPointer* pDispPointerStart,/* [in] */ IDisplayPointer* pDispPointerEnd) = 0;

    virtual HRESULT STDMETHODCALLTYPE RemoveSegment(
            /* [in] */ IHighlightSegment* pISegment) = 0;

};

#endif     /* __IHighlightRenderingServices_INTERFACE_DEFINED__ */


#ifndef __ISelectionServicesListener_INTERFACE_DEFINED__

#define __ISelectionServicesListener_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISelectionServicesListener;


MIDL_INTERFACE("3050f699-98b5-11cf-bb82-00aa00bdce0b")
ISelectionServicesListener : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE BeginSelectionUndo(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE EndSelectionUndo(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE OnSelectedElementExit(
            /* [in] */ IMarkupPointer* pIElementStart,/* [in] */ IMarkupPointer* pIElementEnd,/* [in] */ IMarkupPointer* pIElementContentStart,/* [in] */ IMarkupPointer* pIElementContentEnd) = 0;

    virtual HRESULT STDMETHODCALLTYPE OnChangeType(
            /* [in] */ SELECTION_TYPE eType,/* [in] */ ISelectionServicesListener* pIListener) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetTypeDetail(
            /* [out] */ BSTR* pTypeDetail) = 0;

};

#endif     /* __ISelectionServicesListener_INTERFACE_DEFINED__ */


#ifndef __ISelectionServices_INTERFACE_DEFINED__

#define __ISelectionServices_INTERFACE_DEFINED__

EXTERN_C const IID IID_ISelectionServices;


MIDL_INTERFACE("3050f684-98b5-11cf-bb82-00aa00bdce0b")
ISelectionServices : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE SetSelectionType(
            /* [in] */ SELECTION_TYPE eType,/* [in] */ ISelectionServicesListener* pIListener) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetMarkupContainer(
            /* [out] */ IMarkupContainer** ppIContainer) = 0;

    virtual HRESULT STDMETHODCALLTYPE AddSegment(
            /* [in] */ IMarkupPointer* pIStart,/* [in] */ IMarkupPointer* pIEnd,/* [out] */ ISegment** ppISegmentAdded) = 0;

    virtual HRESULT STDMETHODCALLTYPE AddElementSegment(
            /* [in] */ IHTMLElement* pIElement,/* [out] */ IElementSegment** ppISegmentAdded) = 0;

    virtual HRESULT STDMETHODCALLTYPE RemoveSegment(
            /* [in] */ ISegment* pISegment) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetSelectionServicesListener(
            /* [out] */ ISelectionServicesListener** ppISelectionServicesListener) = 0;

};

#endif     /* __ISelectionServices_INTERFACE_DEFINED__ */


#ifndef __IElementSegment_INTERFACE_DEFINED__

#define __IElementSegment_INTERFACE_DEFINED__

EXTERN_C const IID IID_IElementSegment;


MIDL_INTERFACE("3050f68f-98b5-11cf-bb82-00aa00bdce0b")
IElementSegment : public ISegment
{
public:
    virtual HRESULT STDMETHODCALLTYPE GetElement(
            /* [out] */ IHTMLElement** ppIElement) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetPrimary(
            /* [in] */ BOOL fPrimary) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsPrimary(
            /* [out] */ BOOL* pfPrimary) = 0;

};

#endif     /* __IElementSegment_INTERFACE_DEFINED__ */


#ifndef __IHighlightSegment_INTERFACE_DEFINED__

#define __IHighlightSegment_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHighlightSegment;


MIDL_INTERFACE("3050f690-98b5-11cf-bb82-00aa00bdce0b")
IHighlightSegment : public ISegment
{
public:
};

#endif     /* __IHighlightSegment_INTERFACE_DEFINED__ */


#ifndef __IHTMLEditDesigner_INTERFACE_DEFINED__

#define __IHTMLEditDesigner_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLEditDesigner;


MIDL_INTERFACE("3050f662-98b5-11cf-bb82-00aa00bdce0b")
IHTMLEditDesigner : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE PreHandleEvent(
            /* [in] */ DISPID inEvtDispId,/* [in] */ IHTMLEventObj* pIEventObj) = 0;

    virtual HRESULT STDMETHODCALLTYPE PostHandleEvent(
            /* [in] */ DISPID inEvtDispId,/* [in] */ IHTMLEventObj* pIEventObj) = 0;

    virtual HRESULT STDMETHODCALLTYPE TranslateAccelerator(
            /* [in] */ DISPID inEvtDispId,/* [in] */ IHTMLEventObj* pIEventObj) = 0;

    virtual HRESULT STDMETHODCALLTYPE PostEditorEventNotify(
            /* [in] */ DISPID inEvtDispId,/* [in] */ IHTMLEventObj* pIEventObj) = 0;

};

#endif     /* __IHTMLEditDesigner_INTERFACE_DEFINED__ */


#ifndef __IHTMLEditServices_INTERFACE_DEFINED__

#define __IHTMLEditServices_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLEditServices;


MIDL_INTERFACE("3050f663-98b5-11cf-bb82-00aa00bdce0b")
IHTMLEditServices : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE AddDesigner(
            /* [in] */ IHTMLEditDesigner* pIDesigner) = 0;

    virtual HRESULT STDMETHODCALLTYPE RemoveDesigner(
            /* [in] */ IHTMLEditDesigner* pIDesigner) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetSelectionServices(
            /* [in] */ IMarkupContainer* pIContainer,/* [out] */ ISelectionServices** ppSelSvc) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToSelectionAnchor(
            /* [in] */ IMarkupPointer* pIStartAnchor) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToSelectionEnd(
            /* [in] */ IMarkupPointer* pIEndAnchor) = 0;

    virtual HRESULT STDMETHODCALLTYPE SelectRange(
            /* [in] */ IMarkupPointer* pStart,/* [in] */ IMarkupPointer* pEnd,/* [in] */ SELECTION_TYPE eType) = 0;

};

#endif     /* __IHTMLEditServices_INTERFACE_DEFINED__ */


#ifndef __IHTMLEditServices2_INTERFACE_DEFINED__

#define __IHTMLEditServices2_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLEditServices2;


MIDL_INTERFACE("3050f812-98b5-11cf-bb82-00aa00bdce0b")
IHTMLEditServices2 : public IHTMLEditServices
{
public:
    virtual HRESULT STDMETHODCALLTYPE MoveToSelectionAnchorEx(
            /* [in] */ IDisplayPointer* pIStartAnchor) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToSelectionEndEx(
            /* [in] */ IDisplayPointer* pIEndAnchor) = 0;

    virtual HRESULT STDMETHODCALLTYPE FreezeVirtualCaretPos(
            /* [in] */ BOOL fReCompute) = 0;

    virtual HRESULT STDMETHODCALLTYPE UnFreezeVirtualCaretPos(
            /* [in] */ BOOL fReset) = 0;

};

#endif     /* __IHTMLEditServices2_INTERFACE_DEFINED__ */


#ifndef __ILineInfo_INTERFACE_DEFINED__

#define __ILineInfo_INTERFACE_DEFINED__

EXTERN_C const IID IID_ILineInfo;


MIDL_INTERFACE("3050f7e2-98b5-11cf-bb82-00aa00bdce0b")
ILineInfo : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE get_x(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_baseLine(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textDescent(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textHeight(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_lineDirection(
         /* [out] */ LONG * p) = 0;

};

#endif     /* __ILineInfo_INTERFACE_DEFINED__ */


#ifndef __IHTMLComputedStyle_INTERFACE_DEFINED__

#define __IHTMLComputedStyle_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHTMLComputedStyle;


MIDL_INTERFACE("3050f6c3-98b5-11cf-bb82-00aa00bdce0b")
IHTMLComputedStyle : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE get_bold(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_italic(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_underline(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_overline(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_strikeOut(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_subScript(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_superScript(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_explicitFace(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontWeight(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontSize(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_fontName(
         /* [out] */ TCHAR * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_hasBgColor(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_textColor(
         /* [out] */ DWORD * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_backgroundColor(
         /* [out] */ DWORD * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_preFormatted(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_direction(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_blockDirection(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_OL(
         /* [out] */ VARIANT_BOOL * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsEqual(
            /* [in] */ IHTMLComputedStyle* pComputedStyle,/* [out] */ VARIANT_BOOL* pfEqual) = 0;

};

#endif     /* __IHTMLComputedStyle_INTERFACE_DEFINED__ */


#ifndef __IDisplayPointer_INTERFACE_DEFINED__

#define __IDisplayPointer_INTERFACE_DEFINED__

EXTERN_C const IID IID_IDisplayPointer;


MIDL_INTERFACE("3050f69e-98b5-11cf-bb82-00aa00bdce0b")
IDisplayPointer : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE MoveToPoint(
            /* [in] */ POINT ptPoint,/* [in] */ COORD_SYSTEM eCoordSystem,/* [in] */ IHTMLElement* pElementContext,/* [in] */ DWORD dwHitTestOptions,/* [out] */ DWORD* pdwHitTestResults) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveUnit(
            /* [in] */ DISPLAY_MOVEUNIT eMoveUnit,/* [in] */ LONG lXPos) = 0;

    virtual HRESULT STDMETHODCALLTYPE PositionMarkupPointer(
            /* [in] */ IMarkupPointer* pMarkupPointer) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToPointer(
            /* [in] */ IDisplayPointer* pDispPointer) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetPointerGravity(
            /* [in] */ POINTER_GRAVITY eGravity) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetPointerGravity(
            /* [out] */ POINTER_GRAVITY* peGravity) = 0;

    virtual HRESULT STDMETHODCALLTYPE SetDisplayGravity(
            /* [in] */ DISPLAY_GRAVITY eGravity) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetDisplayGravity(
            /* [out] */ DISPLAY_GRAVITY* peGravity) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsPositioned(
            /* [out] */ BOOL* pfPositioned) = 0;

    virtual HRESULT STDMETHODCALLTYPE Unposition(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsEqualTo(
            /* [in] */ IDisplayPointer* pDispPointer,/* [out] */ BOOL* pfIsEqual) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsLeftOf(
            /* [in] */ IDisplayPointer* pDispPointer,/* [out] */ BOOL* pfIsLeftOf) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsRightOf(
            /* [in] */ IDisplayPointer* pDispPointer,/* [out] */ BOOL* pfIsRightOf) = 0;

    virtual HRESULT STDMETHODCALLTYPE IsAtBOL(
            /* [out] */ BOOL* pfBOL) = 0;

    virtual HRESULT STDMETHODCALLTYPE MoveToMarkupPointer(
            /* [in] */ IMarkupPointer* pPointer,/* [in] */ IDisplayPointer* pDispLineContext) = 0;

    virtual HRESULT STDMETHODCALLTYPE ScrollIntoView(
            ) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetLineInfo(
            /* [out] */ ILineInfo** ppLineInfo) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetFlowElement(
            /* [out] */ IHTMLElement** ppLayoutElement) = 0;

    virtual HRESULT STDMETHODCALLTYPE QueryBreaks(
            /* [out] */ DWORD* pdwBreaks) = 0;

};

#endif     /* __IDisplayPointer_INTERFACE_DEFINED__ */


#ifndef __IDisplayServices_INTERFACE_DEFINED__

#define __IDisplayServices_INTERFACE_DEFINED__

EXTERN_C const IID IID_IDisplayServices;


MIDL_INTERFACE("3050f69d-98b5-11cf-bb82-00aa00bdce0b")
IDisplayServices : public IUnknown
{
public:
    virtual HRESULT STDMETHODCALLTYPE CreateDisplayPointer(
            /* [out] */ IDisplayPointer** ppDispPointer) = 0;

    virtual HRESULT STDMETHODCALLTYPE TransformRect(
            /* [in, out] */ RECT* pRect,/* [in] */ COORD_SYSTEM eSource,/* [in] */ COORD_SYSTEM eDestination,/* [in] */ IHTMLElement* pIElement) = 0;

    virtual HRESULT STDMETHODCALLTYPE TransformPoint(
            /* [in, out] */ POINT* pPoint,/* [in] */ COORD_SYSTEM eSource,/* [in] */ COORD_SYSTEM eDestination,/* [in] */ IHTMLElement* pIElement) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetCaret(
            /* [out] */ IHTMLCaret** ppCaret) = 0;

    virtual HRESULT STDMETHODCALLTYPE GetComputedStyle(
            /* [in] */ IMarkupPointer* pPointer,/* [out] */ IHTMLComputedStyle** ppComputedStyle) = 0;

    virtual HRESULT STDMETHODCALLTYPE ScrollRectIntoView(
            /* [in] */ IHTMLElement* pIElement,/* [in] */ RECT rect) = 0;

    virtual HRESULT STDMETHODCALLTYPE HasFlowLayout(
            /* [in] */ IHTMLElement* pIElement,/* [out] */ BOOL* pfHasFlowLayout) = 0;

};

#endif     /* __IDisplayServices_INTERFACE_DEFINED__ */


#ifndef __IHtmlDlgSafeHelper_INTERFACE_DEFINED__

#define __IHtmlDlgSafeHelper_INTERFACE_DEFINED__

EXTERN_C const IID IID_IHtmlDlgSafeHelper;


MIDL_INTERFACE("3050f81a-98b5-11cf-bb82-00aa00bdce0b")
IHtmlDlgSafeHelper : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE choosecolordlg(
            /* [in] */ VARIANT initColor,/* [out] */ VARIANT* rgbColor) = 0;

    virtual HRESULT STDMETHODCALLTYPE getCharset(
            /* [in] */ BSTR fontName,/* [out] */ VARIANT* charset) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_Fonts(
         /* [out] */ IDispatch* * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_BlockFormats(
         /* [out] */ IDispatch* * p) = 0;

};

#endif     /* __IHtmlDlgSafeHelper_INTERFACE_DEFINED__ */


#ifndef __IBlockFormats_INTERFACE_DEFINED__

#define __IBlockFormats_INTERFACE_DEFINED__

EXTERN_C const IID IID_IBlockFormats;


MIDL_INTERFACE("3050f830-98b5-11cf-bb82-00aa00bdce0b")
IBlockFormats : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
         /* [out] */ IUnknown* * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_Count(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE Item(
            /* [in] */ VARIANT* pvarIndex,/* [out] */ BSTR* pbstrBlockFormat) = 0;

};

#endif     /* __IBlockFormats_INTERFACE_DEFINED__ */


#ifndef __IFontNames_INTERFACE_DEFINED__

#define __IFontNames_INTERFACE_DEFINED__

EXTERN_C const IID IID_IFontNames;


MIDL_INTERFACE("3050f839-98b5-11cf-bb82-00aa00bdce0b")
IFontNames : public IDispatch
{
public:
    virtual HRESULT STDMETHODCALLTYPE get__NewEnum(
         /* [out] */ IUnknown* * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE get_Count(
         /* [out] */ long * p) = 0;

    virtual HRESULT STDMETHODCALLTYPE Item(
            /* [in] */ VARIANT* pvarIndex,/* [out] */ BSTR* pbstrFontName) = 0;

};

#endif     /* __IFontNames_INTERFACE_DEFINED__ */



EXTERN_C const GUID GUID_;


#ifndef _HtmlDlgSafeHelper_PROPDESCS_
EXTERN_C const PROPERTYDESC_METHOD s_methdescHtmlDlgSafeHelperchoosecolordlg;
EXTERN_C const PROPERTYDESC_METHOD s_methdescHtmlDlgSafeHelpergetCharset;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescHtmlDlgSafeHelperFonts;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescHtmlDlgSafeHelperBlockFormats;

#endif


EXTERN_C const GUID GUID_;


#ifndef _BlockFormats_PROPDESCS_
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescBlockFormats_NewEnum;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescBlockFormatsCount;
EXTERN_C const PROPERTYDESC_METHOD s_methdescBlockFormatsItem;

#endif


EXTERN_C const GUID GUID_;


#ifndef _FontNames_PROPDESCS_
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescFontNames_NewEnum;
EXTERN_C const PROPERTYDESC_BASIC_ABSTRACT s_propdescFontNamesCount;
EXTERN_C const PROPERTYDESC_METHOD s_methdescFontNamesItem;

#endif


#endif /*__mshtmext_h__*/

